package com.basic.modules.ykf.model;

import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
import com.basic.common.utils.ParamsModel;
import lombok.Data;

@Data
public class ExcelReq {

    /**
     * 页面URL
     */
    private String url;

    /**
     * 传参
     */
    private Object condition;

    public <T> T getCondition(TypeReference<T> typeReference) {
        if (ObjectUtil.isNull(condition)) {
            return JSON.parseObject("{}", typeReference);
        }
        return JSON.parseObject(JSON.toJSONString(condition), typeReference);
    }

    /**
     * 传参
     */
    private ParamsModel.SortParams sort;

    public ParamsModel.SortParams getSort() {
        if (ObjectUtil.isNull(sort)) {
            return new ParamsModel.SortParams();
        }
        return sort;
    }

    /**
     * 日期
     */
    private String date;

    /**
     * 开始日期
     */
    private String dateStart;

    /**
     * 结束日期
     */
    private String dateEnd;

    /**
     * 月份
     */
    private String month;

    /**
     * 月份-起
     */
    private String startMonth;

    /**
     * 月份-止
     */
    private String endMonth;

}
